/*
 * @Author: qsy
 * @Date: 2025-04-09 16:21:58
 * @LastEditors: qsy
 * @LastEditTime: 2025-04-09 16:55:06
 * @Description: 请填写简介
 */

#ifndef _MY_ADC_H_
#define _MY_ADC_H_

#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/adc.h"
#include "esp_adc_cal.h"


extern esp_adc_cal_characteristics_t *adc_chars;

#define ADC1_CHANNEL    ADC1_CHANNEL_6  // GPIO34
#define ADC1_CHANNEL_2    ADC1_CHANNEL_5  // GPIO33
#define ADC_WIDTH       ADC_WIDTH_BIT_12
#define ADC_ATTEN       ADC_ATTEN_DB_11  // 量程约150mV ~ 2450mV


// 全局变量结构体
typedef struct my_value{
    // 土壤湿度
    uint16_t soil_humidity;
    // 光照强度
    uint16_t light_intensity;
    // 空气温度
    uint16_t air_temperature;
    // 空气湿度
    uint16_t air_humidity;
}my_value_t;

extern my_value_t my_value_gl;

// void my_adc_init();

// uint32_t my_adc_get_value(void);

// uint32_t my_adc_get_humidity(void);

#endif /* _MY_ADC_H_ */